memray flamegraph report
Python Allocator: pymalloc
Reset
Resident set size over time
Memray run stats
Command line: /home/dave_bunten/.local/lib/python3.9/site-packages/memray/__main__.py run test_databaseframe_polars_concat.py
Start time: 2022-07-04 03:27:56.905000
End time: 2022-07-04 03:59:07.014000
Total number of allocations: 140154576
Total number of frames seen: 6632
Peak memory usage: 147.0 GB
Python allocator: pymalloc
How to interpret flamegraph reports

The flame graph displays a snapshot of memory used across stack frames at the time when the memory usage was at its peak.

The vertical ordering of the stack frames corresponds to the order of function calls, from parent to children. The horizontal ordering does not represent the passage of time in the application: they simply represent child frames in arbitrary order.

On the flame graph, each bar represents a stack frame and shows the code which triggered the memory allocation. Hovering over the frame you can also see the overall memory allocated in the given frame and its children and the number of times allocations have occurred.

The Show/Hide Non-Relevant Frames button can be used to reveal and hide frames which contain allocations in code which might not be relevant for the application. These include frames in the CPython eval loop as well as frames introduced by memray during the analysis.

You can find more information in the documentation.